package pe.com.bbva.pct.messages;

import java.util.List;

import pe.com.bbva.pct.enumeracion.EnumMessage;


public class BussinessException extends RuntimeException {
	
	private static final long serialVersionUID = 1L;
	
	private Exception ex;
	private String mensaje;
	private EnumMessage tipo; 	
	private List<String> parametros;
	
	public BussinessException(Exception ex){
		this.ex=ex;
		this.mensaje=ex.getMessage();
		this.tipo=EnumMessage.Error; 
	}
	
	public BussinessException(RuntimeException ex){
		this.ex=ex;
		this.mensaje=ex.getMessage();
		this.tipo=EnumMessage.Error; 
	}
	
	public BussinessException(String mensaje){
		this.mensaje=mensaje;
		this.parametros=null;
		this.tipo=EnumMessage.Error; 
	}
	
	public BussinessException(String mensaje, List<String> parametros){
		this.mensaje=mensaje;
		this.parametros=parametros;
		this.tipo=EnumMessage.Error; 
	}
	
	public BussinessException(String mensaje, List<String> parametros,EnumMessage tipoMensaje){
		this.mensaje=mensaje;
		this.parametros=parametros;
		this.tipo=tipoMensaje;
	}

	public Exception getEx() {
		return ex;
	}

	public void setEx(Exception ex) {
		this.ex = ex;
	}

	public String getMensaje() {
		return mensaje;
	}

	public void setMensaje(String mensaje) {
		this.mensaje = mensaje;
	}

	public EnumMessage getTipo() {
		return tipo;
	}

	public void setTipo(EnumMessage tipo) {
		this.tipo = tipo;
	}

	public List<String> getParametros() {
		return parametros;
	}

	public void setParametros(List<String> parametros) {
		this.parametros = parametros;
	}
	
	
	
}
